Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Currently, syllables that represent melismas affect spacing differently depending on whether they have extenders or hyphens, but neither behavior is ideal, and the inconsistency is an issue in itself.
For syllables with extenders which are, by definition, always melismas), the syllable is actually completely ignored for note spacing purposes - deliberately. This allows the syllable to overlap several notes, but it also risks collision with the next syllable that does occur. See http://musescore.org/en/node/5261
For syllables that melismas but that use hyphens instead of extenders, the syllable is accounted for normally in spacing, leading to unnecessary space being allocated for the chord to which the syllable is attached but at least avoiding the risk of collision. See http://musescore.org/en/node/33246
This PR changes the behavior to be consistent. Melisma syllables of either type will be treated by default like the hyphenated type are currently - they will affect note spacing. However, I added a way to get the current extender behavior (again, for either type): simply add a trailing Ctrl+Space to the syllable. You still risk collision, but since you have to take this step manually, you take on that risk as well. While I was at it, I also made this same trick work to disable allocation of leading space and give a manual workaround (that is similarly use-at-your-own-risk) for http://musescore.org/en/node/22696.
The ideal behavior for melismas, BTW, is for the layout to automatically detect how many segments the syllables would need to overlap, and divide the required space equally among them. This is much easier said than done, however. It's akin to what is done for chord symbols, but that code doesn't actually handle all cases well either, and in any cases, lyrics are more complex because there are multiple voices and multiple verses involved.